#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>

#define BLACK 0xFF000000
#define Red 0xFFFF0000
#define Yellow 0xFFFFFF00

int main(int agrc, char **argv)
{
    int fd_lcd = open("/dev/fb0", O_RDWR);
    if(fd_lcd < 0)
    {
        perror("open /dev/fb0 fail");
        exit(0);
    }

    int buf[800 * 480];
    memset(buf, 0, 800*480);

    //行
    int x = 0;
    //列
    int y = 0;

    for( y = 0; y < 480; y++)
    {
        if(y > 0 && y < 160)
        {
            for(x = 0; x < 800; x++)
                buf[y*800+x] = BLACK;
        }
        if(y >= 160 && y < 320)
        {
            for(x = 0; x < 800; x++)
                buf[y*800+x] = Red;
        }
        if(y >= 320 &&y < 480)
        {
            for(x = 0; x < 800; x++)
                buf[y*800+x] = Yellow;
        }
    }

    write(fd_lcd,buf,800*480*4);
    
        
    close(fd_lcd);

    return 0;
}